package pfc.taller.accesoBD.dao;

import java.sql.SQLException;
import java.util.List;

import pfc.taller.accesoBD.servidorSQL.ServidorSql;
import pfc.taller.tablas.TCoche;

import com.ibatis.sqlmap.client.SqlMapClient;


public class DAOCoche implements IDAOCoche
{

	@SuppressWarnings("unchecked")
	public List<TCoche> getCoches() 
	throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		List<TCoche> coches			= clienteSqlMap.queryForList( "COCHE.getCoches", null );
		
		return coches;
	}
	
	public void altaCoche(TCoche coche) throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		clienteSqlMap.insert("COCHE.nuevoCoche", coche);
	}

	public void bajaCoche(String matricula) throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		clienteSqlMap.insert("COCHE.eliminarCoche", matricula);
	}

	public void modificacionCoche(TCoche coche) throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		clienteSqlMap.insert("COCHE.modificarCoche", coche);
	}

	public TCoche buscaCocheXMatricula(String matricula) throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		TCoche coche 				= (TCoche)clienteSqlMap.queryForObject("COCHE.getCochesXMAtricula", matricula);
		
		return coche;
	}
	
	@SuppressWarnings("unchecked")
	public List<TCoche> getCochesxCliente(Integer idcliente)
	throws SQLException 
	{
		SqlMapClient clienteSqlMap	= ServidorSql.getInstanciaSqlMap();
		List<TCoche> coches			= clienteSqlMap.queryForList( "COCHE.getCochesXCliente", idcliente );
		
		return coches;
	}
}
